package com.typhoon.springboot_demo1;

import java.lang.reflect.InvocationHandler;
import java.lang.reflect.Method;

public class ProxyHandler implements InvocationHandler {
	
	private Object proxied;
	
	public ProxyHandler(Object proxied) {
		this.proxied = proxied;
	}

	@Override
	public Object invoke(Object arg0, Method method, Object[] args) throws Throwable {
	    //在转调具体目标对象之前，可以执行一些功能处理
		System.out.println("反向代理调用");
	    //转调具体目标对象的方法
	    return method.invoke( proxied, args);  
	    //在转调具体目标对象之后，可以执行一些功能处理
	}

}
